package src.DAO;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import src.jdbc.PostgreSQL;

import src.Entities.Hijo;
/**
 *
 * @author Felipe
 */
public class HijoDAO {

    public String insertHijo(Hijo hijo)
 {
     try
        {
     String msg;
            // INSERTA HIJO EN PERSONA SI ES QUE TIENE HIJOS
                     String sql3 = "INSERT " +
                        "       INTO persona(persona_id,genero_id, nombre, app_paterno, app_materno, " +
                        "       run, dv, fecha_nacimiento, estado_civil,nacionalidad)" +
                        "      VALUES (?, ?, ?, ?, ?,?,?,?,?,?)";
                PreparedStatement insert3 = PostgreSQL.getConnection().prepareStatement(sql3);
                insert3.setInt(1, hijo.getIdPersona());
                insert3.setInt(2, hijo.getIdGenero());
                insert3.setString(3, hijo.getNombre());
                insert3.setString(4, hijo.getApellidoPat());
                insert3.setString(5, hijo.getApellidoMat());
                insert3.setString(6, hijo.getRun());
                insert3.setString(7, String.valueOf(hijo.getDv()));
                java.sql.Date fechaNacH = new java.sql.Date(hijo.getFechaNac().getTime());
                insert3.setDate(8, fechaNacH);
                insert3.setString(9, hijo.getEstadoCivil());
                insert3.setString(10, hijo.getNacionalidad());
                msg = String.valueOf(insert3.execute());


                // INSERTA RELACION HIJO AFILIADO


                String sql4 = "INSERT " +
                        "       INTO parentesco(parentesco_id,afiliado_id,pariente_id,nombre_parentesco)" +
                        "      VALUES (NEXTVAL('parentesco_seq'),?, ?,'Hijo' )";
                PreparedStatement insert4 = PostgreSQL.getConnection().prepareStatement(sql4);
                insert4.setInt(1, hijo.getIdAfiliado());
                insert4.setInt(2, hijo.getIdPersona());
                msg = String.valueOf(insert3.execute());
         return msg;

        }
        catch (Exception e)
        {
            return e.toString();
        }
            }

}
